package com.tjec.project.businessWorkbench.domain;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.tjec.framework.aspectj.lang.annotation.Excel;

import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.tjec.framework.web.domain.BaseEntity;
import com.tjec.project.businessWorkbench.dto.BmsAttachmentDto;

import io.swagger.annotations.ApiModelProperty;

/**
 * 项目文档 对象 bms_project_doc
 * 
 * @author pangyongfeng
 * @date 2020-04-27
 */
public class BmsProjectDoc extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @JsonIgnore
	@ApiModelProperty(value = "${comment}")
    private String id;

    /** guid */
    @Excel(name = "guid")
	@ApiModelProperty(value = "guid")
    private String guid;
    
    private List<String> guids;

    private List<String> businessIds;

    /** 目录id */
    @Excel(name = "目录id")
	@ApiModelProperty(value = "目录id")
    private String catalogId;

    /** 文件标题 */
    @Excel(name = "文件标题")
	@ApiModelProperty(value = "文件标题")
    private String name;

    /** 业务ID */
    @Excel(name = "业务ID")
	@ApiModelProperty(value = "业务ID")
    private String businessId;
    
    /** 文件类型 */
    private String type;
    
    /** 发布人 */
    @Excel(name = "发布人")
	@ApiModelProperty(value = "发布人")
    private String publishPerson;

    @ApiModelProperty(value = "业务名称")
    private String businessName;

    @ApiModelProperty(value = "项目Id")
    private String projectId;
    
    @ApiModelProperty(value = "文件名称")
    private String searchFileName;
    
    private ArrayList<String> attachmentIds;
    
    /**附件集合**/
    private List<BmsAttachmentDto> attachments;

    private String level;

    /**
     * 文件数量
     */
    private Integer counts;

    public Integer getCounts() {
        return counts;
    }

    public void setCounts(Integer counts) {
        this.counts = counts;
    }

    public String getLevel() {
        return level;
    }

    public void setLevel(String level) {
        this.level = level;
    }

    public String getSearchFileName() {
		return searchFileName;
	}

	public void setSearchFileName(String searchFileName) {
		this.searchFileName = searchFileName;
	}

	public String getProjectId() {
        return projectId;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    public String getBusinessName() {
        return businessName;
    }

    public void setBusinessName(String businessName) {
        this.businessName = businessName;
    }

    public String getPublishPerson() {
		return publishPerson;
	}

	public void setPublishPerson(String publishPerson) {
		this.publishPerson = publishPerson;
	}

	public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setGuid(String guid) 
    {
        this.guid = guid;
    }

    public String getGuid() 
    {
        return guid;
    }
    public void setCatalogId(String catalogId) 
    {
        this.catalogId = catalogId;
    }

    public String getCatalogId() 
    {
        return catalogId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setBusinessId(String businessId) 
    {
        this.businessId = businessId;
    }

    public String getBusinessId() 
    {
        return businessId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("guid", getGuid())
            .append("catalogId", getCatalogId())
            .append("name", getName())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("businessId", getBusinessId())
            .append("attachmentIds", getAttachmentIds())
            .append("guids", getGuids())
            .append("attachments", getAttachments())
            .append("type", getType())
            .append("sortBy", getSortBy())
            .append("order", getOrder())
            .toString();
    }

    public List<BmsAttachmentDto> getAttachments() {
		return attachments;
	}

	public void setAttachments(List<BmsAttachmentDto> attachments) {
		this.attachments = attachments;
	}

	public ArrayList<String> getAttachmentIds() {
		return attachmentIds;
	}

	public void setAttachmentIds(ArrayList<String> attachmentIds) {
		this.attachmentIds = attachmentIds;
	}

	public List<String> getGuids() {
		return guids;
	}

	public void setGuids(List<String> guids) {
		this.guids = guids;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

    public List<String> getBusinessIds() {
        return businessIds;
    }

    public void setBusinessIds(List<String> businessIds) {
        this.businessIds = businessIds;
    }
}
